I. Survey of Need
People are intensively relying on various communication technologies to communicate each day. Often, the numbers dialed are a small group of the same numbers, i.e., relatives, friends, pizza delivery, or workplace. People also use these various communication technologies, such as cellular telephones, while in a rush, at work, or in the car. Furthermore, the numbers frequently dialed usually are a finite list of numbers. Because of the situations in which these technologies are used, and the importance such technologies have in everyday life, it is desirable to improve the efficiency and ease of entering numbers into such communication devices. One improvement in the art is the provision of a dialing assistant to facilitate the automatic completion of partially dialed numbers. Decreasing the time one spends dialing a number on a cellular telephone, for example, decreases the time the driver's eyes are focused on the telephone and not on the road. Thus, there is a need to improve upon the safety as well as the efficiency of these communication technologies.
II. Current Techniques of Auto-Completion
Data processing systems can take on many forms ranging from highly formatted, custom or specialized database programs to a more generic, user-defined database. Auto-completion techniques can be seen within this spectrum of data processing systems. An example of a more generic database utilizing an automatic data entry completion algorithm is the computer spreadsheet program, Microsoft Excel, marketed by Microsoft Corporation. Another example can be seen in Quattro Pro, another spreadsheet program marketed by Corel. These applications however, do not achieve the objective of suggesting telephone numbers.
Automatic completion algorithms generally refer to the technique of comparing a partially entered data item to a list of possible completed data items to find a suggestion for completing the partially entered data item. Automatic completion algorithms improve the method of entering data by increasing the speed and integrity of each data entry. For example, a user is only required to enter enough data to allow the system to suggest the completed version of what the user is in the method of entering. This results in an increase in speed by reducing the number of required key strokes.
III. State of Art Auto-Completion Algorithms are not Adequate
Current auto-completion algorithms do not provide for suggesting completions for telephone numbers being dialed with a communication device. Implementing an automatic completion feature for a communication device presents several complicated issues. The implementation must be able to: 1) differentiate between accessing an address book entry, versus directly dialing a telephone number; 2) find appropriate candidates to suggest as completions based on numbers which have been entered; and 3) process long distance numbers and special dialing situations.
In view of the foregoing, an auto-completion feature for a communication device must be able to accommodate long distance numbers, local numbers, and address book entries. There is a need for this auto-completion feature because such would increase the efficiency of communication devices, increase the integrity of the numbers entered into the communication device and improve the safety of using such devices.